package com.carmeth.patrones.pool;

import java.util.Random;

public class Trabajador implements Runnable {
	private int iteracion;
	private int id;
	public Trabajador(int id){
		this.id = id;
	}
	
	@Override
	public void run() {
		PoolObjetos.getInstance().getTrabajadores().remove(this);
		System.out.println("Trabajador " + id + ", iteracion " + iteracion);
		iteracion++;
		try {
			Thread.currentThread().sleep(new Random().nextInt(500) + 500);
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
		PoolObjetos.getInstance().getTrabajadores().add(this);
	}
	
	@Override
	public boolean equals(Object o){
		assert(o instanceof Trabajador);
		return ((Trabajador)o).id == this.id;
	}

}
